import { Provide } from '@midwayjs/core';
import { NUser } from '../entity/user.entity';
import { Repository } from 'typeorm';
import { InjectEntityModel } from '@midwayjs/typeorm';

@Provide()
export class UserService {

  @InjectEntityModel(NUser)
  userRepository: Repository<NUser>;

  async findUserById(id: number){
    return this.userRepository.findOneBy({
      id: id,
   })
  }
  async findUserByName(name: string){
    return this.userRepository.findOneBy({
      name: name,
   })
  }
  async delUserById(id: number){
    return this.userRepository.delete({
      id: id 
    })
  }


  async addUser(user : NUser){
    return this.userRepository.save(user)
  }
  async updateUser(user : NUser){
    return this.userRepository.update({id: user.id},user)
  }
  // async getUser(options: IUserOptions) {
  //   return {
  //     uid: options.uid,
  //     username: 'mockedName',
  //     phone: '12345678901',
  //     email: 'xxx.xxx@xxx.com',
  //   };
  // }
}
